Providing notifications based on geofencing search results

ABSTRACT

Systems and methods for providing notifications based on geofencing search results are provided. In particular, in response to a search query from a user, a plurality of search results can be determined. One or more physical search results having an associated geographic location can be determined from the plurality of search results. A geofencing search result can be generated for at least one of the physical search results. The geofencing search result can include data for establishing a geofence proximate to the geographic location by a user device associated with the user. Upon selection of the geofencing search result by the user, the geofence can be established by the user device. Upon detecting entry into the established geofence, the user device can provide one or more notifications associated with the geofence and/or the search query to the user.

FIELD

The present disclosure relates generally to geofences, and moreparticularly to providing geofence data in a web search result listing.

BACKGROUND

Search engines may be used to locate various resources on the Internet.For example, a user may submit a search query to a search engine and, inresponse to the search query, the search engine may generate a number ofsearch results based on the search query and return the search resultsto the user.

In recent years, location based functionality associated with mobilecomputing devices has become increasingly popular. Location basedfunctionality can allow a user device, such as a smart phone, tablet orwearable computing device, to receive information corresponding to aparticular location and to perform actions associated with theinformation. For instance, the actions can be performed based on a userdevice location relative to a geofence. A geofence can specify aboundary associated with a geographic location. When entry into ageofence is detected by a user device, the user device can perform oneor more actions associated with the geofence. For instance, the userdevice can provide for display a notification associated with thegeofence and/or the geographic location.

SUMMARY

Aspects and advantages of embodiments of the present disclosure will beset forth in part in the following description, or may be learned fromthe description, or may be learned through practice of the embodiments.

One example aspect of the present disclosure is directed to acomputer-implemented method of providing geofence-based notifications.The method includes receiving, by one or more computing devices, dataindicative of a search query from a user. The method further includesdetermining, by the one or more computing devices, one or more physicalsearch results based at least in part on the search query from the user.The one or more physical search results have an associated geographiclocation. The method further includes generating, by the one or morecomputing devices, one or more additional search results associated withthe one or more physical search results. Each of the one or moreadditional search results are associated with a geofence to beestablished around a geographic location associated with a physicalsearch result.

Other example aspects of the present disclosure are directed to systems,apparatus, tangible, non-transitory computer-readable media, userinterfaces, memory devices, and electronic devices for establishinggeofences.

These and other features, aspects and advantages of various embodimentswill become better understood with reference to the followingdescription and appended claims. The accompanying drawings, which areincorporated in and constitute a part of this specification, illustrateembodiments of the present disclosure and, together with thedescription, serve to explain the related principles.

BRIEF DESCRIPTION OF THE DRAWINGS

Detailed discussion of embodiments directed to one of ordinary skill inthe art are set forth in the specification, which makes reference to theappended figures, in which:

FIG. 1 depicts an example web search engine user interface according toexample embodiments of the present disclosure;

FIG. 2 depicts an overview of an example system for providing geofencingsearch results according to example embodiments of the presentdisclosure;

FIG. 3 depicts a flow diagram of an example method of providingnotifications based on geofencing search results according to exampleembodiments of the present disclosure; and

FIG. 4 depicts an example system according to example embodiments of thepresent disclosure.

DETAILED DESCRIPTION

Reference now will be made in detail to embodiments, one or moreexamples of which are illustrated in the drawings. Each example isprovided by way of explanation of the embodiments, not limitation of thepresent disclosure. In fact, it will be apparent to those skilled in theart that various modifications and variations can be made to theembodiments without departing from the scope or spirit of the presentdisclosure. For instance, features illustrated or described as part ofone embodiment can be used with another embodiment to yield a stillfurther embodiment. Thus, it is intended that aspects of the presentdisclosure cover such modifications and variations.

Example aspects of the present disclosure are directed to establishinggeofences on a user device based at least in part on one or moregeofencing search result elements. For instance, in response to a searchquery from a user, a plurality of search results relating to the searchquery can be determined. At least one physical search result having anassociated geographic location can be identified from the plurality ofsearch results. One or more geofencing search results can be generatedand associated with the at least one physical search result. Thegeofencing search results can be associated with data for establishing ageofence around or near a geographic location associated with a physicalsearch result. The user can select a geofencing search result, and inresponse to the selection, a geofence can be established by the userdevice based at least in part on the data associated with the geofencingsearch result. When the user device detects entry into the geofence, theuser device may provide a notification associated with the geofenceand/or the geographic location to the user.

More particularly, a user may input a search query into a search engine,such as a web search engine. The search engine can be configured toretrieve a plurality of search results relating to the search query andto provide at least a portion of the search results to the user. Forinstance, in response to receiving data indicative of the search query,the search engine may access one or more databases (e.g. search engineindex) to identify data related to the search query. Such data caninclude, for instance, web sites, images, videos, location data, etc.One or more physical search results can then be identified from thesearch results. As used herein, a physical search result is a searchresult having an associated geographic location. As an example, aphysical search result may have an associated brick and mortar store ata particular geographic location. For instance, a search query for acircular saw may return results associated with information relating tocircular saws, images of circular saws, and/or one or more physicalsearch results such as hardware stores or other locations that carrycircular saws for purchase. The one or more physical search results mayinclude an address or other information indicative of a locationassociated with the physical search result. For instance, a physicalsearch result associated with a hardware store may include an address ofthe hardware store.

Additional search results can be generated for one or more of thephysical search results. The additional search results can be geofencingsearch results that include data for establishing a geofence around ornear a geographic location associated with a physical search result. Asused herein, a geofence can be a virtual perimeter for a geographicarea. In particular, a geofence can define a geographic region. Ageofence can generally be defined as a circle, and can be specifiedusing latitude, longitude coordinates indicative of the center of thecircle, and a radius indicative of the size of the circle. Othersuitable geometric shapes can also be used, for instance, by usingvarious polygons and/or multiple overlapping circles. In this manner,the geofencing search results can include data indicative of ageographic location for which to establish the geofence (e.g. latitude,longitude coordinates), and a size and/or shape of the geofence (e.g.radius). The geofencing search result may further include an expirationtime or other temporal indicator associated with a length of time forwhich the geofence is to be established.

In example embodiments, a geofencing search result can be generated anddisplayed as an additional listing on a search engine results page. Inparticular, a search engine results page provided in response to asearch query for hardware stores can include one or more listingsindicative of the search results. Each listing may, for instance,include a link (e.g. hyperlink) to data associated with the search query(e.g. search results). In this manner, the geofencing search result maybe displayed as an independent listing on the search engine resultspage. In alternative embodiments, a geofencing search result may bedisplayed in association with a search result listing. For instance, thegeofencing search result may be displayed as an icon or other indicatorlocated proximate a physical search result with which the geofencingsearch result is associated.

Upon a selection of a geofencing search result by a user, a user deviceof the user can establish a geofence around or near the geographiclocation associated with the geofencing search result. As indicatedabove, a geofencing search result may include data indicative of alocation of a geofence, a size of a geofence, a shape of a geofence,and/or an expiration date or establishment period for the geofence. Suchdata can be provided to the user device, and the user device canestablish the geofence in accordance with the provided data. Forinstance, if a user selects a geofencing search result associated with ageographic location of a hardware store, a geofence can be establishedaround or near the hardware store by the user device.

In alternative embodiments, one or more geofencing results may beimplemented as user interface elements provided for display, forinstance, by the user device associated with the user. In suchembodiments, the user device may be configured to generate thegeofencing elements based at least in part on search results received inresponse to a search query. In particular, upon receiving search resultsfrom the search engine, the user device can determine one or moregeographic locations based on the received search results. The userdevice can then generate and provide for display one or more geofencingelements associated with the geographic locations. Upon a user selectionof a geofencing element, the user device can establish a geofence aroundor near the geographic location associated with the geofencing element.In this manner, the user device can be configured to establish one ormore geofences based on search results without the need forcommunication with the search engine.

The user device can further be configured to determine a currentgeographic location of the user device. For instance, the geographiclocation can be determined using GPS, IP address, cell triangulation,proximity to Wi-Fi access points, proximity to beacon devices, or othersuitable location determination techniques. The user device can furtherdetermine a location of the user device relative to one or moregeofences established by the user device. In this manner, the userdevice can detect entry into a geofence. Upon detecting entry into ageofence, the user device can perform one or more action associated withthe geofence. For instance, the one or more actions can includeproviding a notification to the user possessing the user device. Incontinuing the example above regarding the hardware store, if the userdevice detects entry into the geofence established around the hardwarestore, the user device may provide a notification associated with thehardware store and/or the search query that caused the hardware store tobe provided as a search result (e.g. circular saw). The notification mayinclude an address of the hardware store, directions to the hardwarestore, and/or other information. In this manner, the user can bereminded of a previous search query when the user is near the hardwarestore. In example embodiments, a list or other indicator of the one ormore actions can be provided to the user, such that the user may selectone or more desired actions to be performed.

In response to receiving a user selection of one or more desired actionsassociated with the geofence, the geofence can be removed from the userdevice. In this manner, the user device will no longer detect entry intothe geofence, and will no longer perform actions associated with thegeofence. In alternative embodiments, the geofence can be removed fromthe user device at the expiration time (or in accordance with some othertemporal indicator, such as a time period) associated with the length oftime for which the geofence is to be established. In a particularembodiment, the geofence can be removed from the user device upon theearlier of performing one or more cations associated with the geofenceand the expiration time.

With reference now to the figures, example embodiments of the presentdisclosure will be discussed in further detail. FIG. 1 depicts anexample user interface 100 for receiving a search query from a user andproviding search results based on the search query. User interface 100may be provided for display, for instance, by a user device, such asuser device 202 depicted in FIG. 2, or other computing device. Forinstance, user interface 100 may be provided in a web browser or in aspecial purpose application executed by user device 202, or othercomputing device.

As depicted, user interface 100 can include an input field 102, and asearch results block 104. Input field 102 can be configured to receivean input from a user indicative of a search query. For instance, thesearch query may be a keyword or series of keywords input by a user(e.g. circular saw). Search results block 104 can include visualrepresentations associated with one or more search results 106, 108, and110. The search results 106-110 may include information related to thesearch query. As shown, search results 106-110 can include links tovarious websites associated with circular saws, and a short descriptorof the information included in the website. Search results block 104 canfurther include various other information related to circular saws, suchas images, videos, mapping data associated with places to purchasecircular saws, etc. In addition, although only five search results areillustrated in FIG. 1, search results block 104 can include any suitablenumber of search results.

Search results block 104 further includes geofencing elements 112 and114. Geofencing elements 112, 114 can include data associated with ageofence to be established on or by a user device. As indicated above,geofencing elements can be displayed as an independent search result(e.g. geofencing element 112), and/or as an indicator in associationwith another search result (e.g. geofencing element 114). For instance,geofencing element 112 is displayed as an independent search resultlisting prompting the user to establish a geofence around or near the“Local Hardware Store.” Geofencing element 114 is displayed as an iconassociated with search result 110. It will be appreciated that, althoughgeofencing element 112 is associated with establishing a geofence forthe local hardware store of search result 110, geofencing element 112(or other geofencing element) can be associated with establishing ageofence for various other suitable search results having an associatedphysical location without deviating from the scope of the presentdisclosure. In alternative embodiments, geofencing element 112 and/orgeofencing element 114 can be user interface elements generated andprovided for display by the user device. As will be described in greaterdetail below, a user selection of either geofencing element 112 orgeofencing element 114 will cause a geofence to be established around ornear the local hardware store. It will be appreciated that, althoughonly two geofencing elements are depicted, search results block 104 caninclude any suitable number of geofencing elements. For instance, anyphysical search result (e.g. search result having an associatedgeographic location) displayed in search results block 104 can have anassociated geofencing search result.

FIG. 2 depicts an overview of an example system 200 for establishinggeofences associated with search results. System 200 includes a userdevice 202 and a search engine 204. User device 202 can provide fordisplay a user interface associated with a web search engine, such asuser interface 100. User device 202 can receive a search query from auser and provide the search query to search engine 204 via a network210. In example embodiments, search engine 204 can be hosted on a remotecomputing device, such as a web server. Search engine 204 can access asearch result index 206 to determine a plurality of search results.Search engine 204 can further access location data 208 to determine oneor more physical search results from the plurality of search results.Although FIG. 2 depicts location data 208 as being stored in a separatelocation (e.g. separate databases) from search result index 206, it willbe appreciated that location data 208 can be stored in search index 206(e.g. with each corresponding search result). Search engine 204 canfurther be configured to generate geofencing search results for at leastone physical search result based at least in part on the geographiclocation of the at least one physical search result. The geofencingsearch results can include data indicative of a location of the geofenceto be established, a size of the geofence to be established, and anestablishment period or duration for the geofence. In exampleembodiments, the geofencing search result can further includeinformation relating to the search query and/or the physical searchresult with which the geofencing search result is associated.

One or more search results listings can be provided to user device 202,for instance, via user interface 100. The user can then select a searchresult. If the user selects a geofencing search result, such asgeofencing element 112 or 114, a geofence can be established and storedby user device 202. For instance, user device 202 can store dataindicative of the established geofence as geofence data 212. When userdevice 202 detects entry into the established geofence (e.g. using oneor more location determination techniques), user device 202 can performone or more actions associated with the geofence. For instance, userdevice 202 can provide one or more notifications associated with thegeofencing search result. In particular, the notification(s) can includeinformation associated with the search query, the geographic locationassociated with the physical search result, the entity associated withthe physical search result, etc. For instance, the notifications mayinclude a reminder that the user searched for circular saws, directionsto the geographic location associated with the geofence, a link to thewebsite of the entity associated with the geofence, etc. In exampleembodiments, the notification may be a visual notification provided fordisplay, an audible notification, a vibratory notification or othersuitable notification.

In alternative embodiments, a search query may be input by a user on asecond computing device, such as a laptop computer or a desktopcomputer, and the search results may be provided to the second computingdevice. In this manner, when the user selects a geofencing searchresult, the data indicative of the geofence to be established by theuser device can be provided from the second computing device to userdevice 202.

In further alternative embodiments, user device 202 can establish ageofence without a use selection of a geofencing search result. In suchembodiments, user device 202 may parse search results (e.g.www.localhardwarestore.com) and execute a map query for “local hardwarestore.” One or more nearby local hardware store locations can bedetermined from the map query results. The user device can thenestablish and store a geofence around at least one of the one or morenearby locations.

FIG. 3 depicts a flow diagram of an example method (300) of establishinggeofences based on a search query and providing notifications based onthe established geofences according to example embodiments of thepresent disclosure. Method (300) can be implemented by one or morecomputing devices, such as one or more of the computing devices depictedin FIG. 4. In particular implementations, the method (300) can beimplemented by user device 202 and search engine 204 depicted in FIG. 2.In addition, FIG. 3 depicts steps performed in a particular order forpurposes of illustration and discussion. Those of ordinary skill in theart, using the disclosures provided herein, will understand that thesteps of any of the methods discussed herein can be adapted, rearranged,expanded, omitted, or modified in various ways without deviating fromthe scope of the present disclosure.

At (302), method (300) can include providing, by a user device, a searchquery to a server. For instance, the search query can be a keyword or astring of keywords input by a user. In example embodiments, the searchquery may be a textual search query (e.g. input using a physical ortouchscreen keyboard), a voice search query (e.g. input by providing oneor more audible keywords to the user device), and/or various othersuitable search queries. At (304), method (300) can include receiving,by the server, the search query. In example embodiments, the server canhost a search engine and/or a mapping application such as a geographicinformation system. At (306), method (300) can include determining, bythe server, one or more physical search results based on the searchquery. Physical search results can include search results related to thesearch query that have an associated geographic location. For instance,a physical search result can be a search result associated with abusiness or entity that has a physical location such as a store. Aphysical search result can be determined at least in part based on thepresence of an address or other location indicator associated with thesearch result. In example embodiments, the physical search results canbe a subset of the entire set of search results determined by theserver, or the entire set of search results determined by the server. Inthis manner, a set of search results related to the search query can bedetermined, and the search results can be analyzed to determine which ofthe search results have associated physical locations.

At (308), method (300) can include generating, by the server, geofencingsearch results associated with at least one physical search result. Forinstance, a geofencing search result can be generated for physicalsearch results based on the relevance of the physical search results. Inthis manner, a geofencing search result can be generated for physicalsearch results above a relevance threshold. It will be appreciated, thatany suitable number of geofencing search results can be generated forany number of physical search results. At (310), method (300) caninclude providing, by the server, the search results to the user device.For instance, the server can provide the geofencing search results alongwith the other determined search results.

At (312), method (300) can include receiving, by the user device, thesearch results from the server. The search results can be provided fordisplay by the user device, for instance, in a user interface associatedwith a search engine results page. At (314), method (300) can includereceiving, by the user device, a user selection of a geofencing searchresult. The user device can then provide data indicative of the userselection to the server.

At (316), method (300) can include receiving, by the server, the dataindicative of the user selection. The server can then obtain dataassociated with the geofence. For instance, the data associated with thegeofence can include data indicative of a location of the geofence, dataindicative of the size of the geofence, data indicative of the shape ofthe geofence, and an expiration time and/or establishment periodassociated with the geofence. In example embodiments, the geofence datacan be determined automatically and/or can be specified by a user. Forinstance, in embodiments wherein a physical search result has multipleassociated geographic locations, the locations for which geofences areto be established can be determined automatically based at least in parton a current geographic location of the user and/or user device, or maybe determined based on an input from a user specifying the location(s)for which a geofence should be established.

At (318), method (300) can include providing, by the server, theobtained geofence data to the user device. At (320), method (300) caninclude receiving, by the user device, the geofence data. The userdevice can then establish a geofence in accordance with the geofencedata. For instance, the user device may establish the geofence using oneor more applications executed by the user device. In alternativeembodiments, the geofence data can be provided to the user device in(310) of method (300). For instance, the geofence data can be providedto the user along with the corresponding geofencing search results. Insuch embodiments, (318) of method (300) may be bypassed and method (300)can proceed from (316) directly to (320).

At (322), method (300) can include detecting entry into the establishedgeofence. For instance, the user device can detect entry into thegeofence using one or more location determination techniques todetermine a geographic location of the user device. The user device canthen compare the determined location to the established geofence todetermine a location of the user device relative to the geofence.

At (324), method (300) can include, in response to detecting entry intothe geofence, performing one or more actions associated with thegeofence. For instance, as indicated above, the one or more actions mayinclude providing for display a notification associated with thegeofence. The notification(s) may include information relating to thesearch query, the geographic location of the physical search result, theentity associated with the physical search result, etc.

In example embodiments, the detection of entry into the geofence, and/orthe one or more performed actions can be reported to the search enginefor use in evaluating the performance of the geofencing search resultand/or the physical search result. For instance, the detection of entryinto the geofence can be used to determine the relevance of the searchresult in future search result ranking implementations. In furtherembodiments, the further reporting can be performed if the user actuallytravels to the geographic location once the one or more actions areperformed. For instance, in response to detecting entry into thegeofence and the performance of the one or more actions, a secondgeofence can be established by the user device approximatelycorresponding to the perimeter of the entity associated with thephysical search result. It will be appreciated that the user's presenceat the geographic location can be detected in various other suitablemanners. Detection of entry into the second geofence can then bereported to the search engine for further use, for instance, inevaluating the performance of the search result.

At (326), method (300) can include removing, by the user device, thegeofence. For instance, the geofence may be removed in response toperforming the one or more actions associated with the geofence. Asanother example, the geofence may be removed at the expiration timeassociated with the geofence.

In alternative embodiments, the user device may adjust the geofence, forinstance, in response to a user interaction with the user device by theuser. For instance, the user may wish to adjust a size, shape, location,or other characteristic associated with the geofence. In this manner,the geofence may be moved, resized, and/or reshaped in response to theuser interaction.

FIG. 4 depicts an example computing system 400 that can be used toimplement the methods and systems according to example aspects of thepresent disclosure. The system 400 can be implemented using aclient-server architecture that includes a server 410 that communicateswith one or more client devices 430 over a network 440. The system 400can be implemented using other suitable architectures, such as a singlecomputing device.

The system 400 includes a server 410, such as a web server. The server410 can host a web search engine and a geographic information system,such as a geographic information system associated with a mappingservice. The server 410 can be implemented using any suitable computingdevice(s). The server 410 can have one or more processors 412 and one ormore memory devices 414. The server 410 can also include a networkinterface used to communicate with one or more client devices 430 overthe network 440. The network interface can include any suitablecomponents for interfacing with one more networks, including forexample, transmitters, receivers, ports, controllers, antennas, or othersuitable components.

The one or more processors 412 can include any suitable processingdevice, such as a microprocessor, microcontroller, integrated circuit,logic device, or other suitable processing device. The one or morememory devices 414 can include one or more computer-readable media,including, but not limited to, non-transitory computer-readable media,RAM, ROM, hard drives, flash drives, or other memory devices. The one ormore memory devices 414 can store information accessible by the one ormore processors 412, including computer-readable instructions 416 thatcan be executed by the one or more processors 412. The instructions 416can be any set of instructions that when executed by the one or moreprocessors 412, cause the one or more processors 412 to performoperations. For instance, the instructions 416 can be executed by theone or more processors 412 to implement a search result analyzer 420 anda geofence determiner 422.

As shown in FIG. 4, the one or more memory devices 414 can also storedata 418 that can be retrieved, manipulated, created, or stored by theone or more processors 412. The data 418 can include, for instance,mapping data, search result data, web search index data, geofence data,and other data. The data 418 can be stored in one or more databases. Theone or more databases can be connected to the server 410 by a highbandwidth LAN or WAN, or can also be connected to server 410 throughnetwork 440. The one or more databases can be split up so that they arelocated in multiple locales.

The server 410 can exchange data with one or more client devices 430over the network 440. Although two client devices 430 are illustrated inFIG. 8, any number of client devices 430 can be connected to the server410 over the network 440. Each of the client devices 430 can be anysuitable type of computing device, such as a general purpose computer,special purpose computer, laptop, desktop, mobile device, navigationsystem, smartphone, tablet, wearable computing device, a display withone or more processors, or other suitable computing device.

Similar to the server 410, a client device 430 can include one or moreprocessor(s) 432 and a memory 434. The one or more processor(s) 432 caninclude one or more central processing units (CPUs), graphics processingunits (GPUs) dedicated to efficiently rendering images or performingother specialized calculations, and/or other processing devices. Thememory 434 can include one or more computer-readable media and can storeinformation accessible by the one or more processors 432, includinginstructions 436 that can be executed by the one or more processors 432and data 438. For instance, the memory 434 can store instructions 436for implementing a user interface module for displaying search resultsaccording to example embodiments of the present disclosure.

The client device 430 of FIG. 4 can include various input/output devicesfor providing and receiving information from a user, such as a touchscreen, touch pad, data entry keys, speakers, and/or a microphonesuitable for voice recognition. For instance, the client device 430 canhave a display device 435 for presenting a user interface displayingsemantic place names according to example aspects of the presentdisclosure.

The client device 430 can also include a network interface used tocommunicate with one or more remote computing devices (e.g. server 410)over the network 440. The network interface can include any suitablecomponents for interfacing with one more networks, including forexample, transmitters, receivers, ports, controllers, antennas, or othersuitable components.

The network 440 can be any type of communications network, such as alocal area network (e.g. intranet), wide area network (e.g. Internet),cellular network, or some combination thereof. The network 440 can alsoinclude a direct connection between a client device 430 and the server410. In general, communication between the server 410 and a clientdevice 430 can be carried via network interface using any type of wiredand/or wireless connection, using a variety of communication protocols(e.g. TCP/IP, HTTP, SMTP, FTP), encodings or formats (e.g. HTML, XML),and/or protection schemes (e.g. VPN, secure HTTP, SSL).

The technology discussed herein makes reference to servers, databases,software applications, and other computer-based systems, as well asactions taken and information sent to and from such systems. One ofordinary skill in the art will recognize that the inherent flexibilityof computer-based systems allows for a great variety of possibleconfigurations, combinations, and divisions of tasks and functionalitybetween and among components. For instance, server processes discussedherein may be implemented using a single server or multiple serversworking in combination. Databases and applications may be implemented ona single system or distributed across multiple systems. Distributedcomponents may operate sequentially or in parallel.

While the present subject matter has been described in detail withrespect to specific example embodiments thereof, it will be appreciatedthat those skilled in the art, upon attaining an understanding of theforegoing may readily produce alterations to, variations of, andequivalents to such embodiments. Accordingly, the scope of the presentdisclosure is by way of example rather than by way of limitation, andthe subject disclosure does not preclude inclusion of suchmodifications, variations and/or additions to the present subject matteras would be readily apparent to one of ordinary skill in the art.

What is claimed is:
 1. A computer-implemented method of providingnotifications to a user, the method comprising: receiving, by one ormore computing devices, an input from a user indicative of a searchquery by the user; providing, by the one or more computing devices, dataindicative of the search query by the user to a remote computing device;receiving, by the one or more computing devices, a plurality of searchresults associated with the search query, the plurality of searchresults including search results that each include a corresponding linkto a corresponding website and a short descriptor of informationincluded in the website; and providing for display, by the one or morecomputing devices, the plurality of search results along with at leastone geofencing element that is based at least in part on the pluralityof search results, the at least one geofencing element being selectableto establish a geofence around a geographic location associated with atleast one search result of the plurality of search results; wherein aselection of the geofencing element causes, based on a subsequentdetection of entry into the geofence established by the selection, atleast one of the one or more computing devices to provide a notificationassociated with the geofence.
 2. The computer-implemented method ofclaim 1, further comprising receiving, by the one or more computingdevices, at least one geofencing search result, and wherein providingfor display, by the one or more computing devices, at least onegeofencing element comprises providing for display the at least onegeofencing search result.
 3. The computer-implemented method of claim 1,further comprising: determining, by the one or more computing devices, ageographic location associated with at least one search result of theplurality of search results; and generating, by the one or morecomputing devices, the at least one geofencing element based at least inpart on the geographic location associated with the at least one searchresult.
 4. The computer-implemented method of claim 1, furthercomprising: receiving, by the one or more computing devices, an inputfrom the user indicative of the selection of the geofencing element;providing, by the one or more computing devices, data indicative of theselected geofencing element to the remote computing device; receiving,by the one or more computing devices, data indicative of the geofence tobe established around the geographical location associated with thegeofencing element; and establishing the geofence around thegeographical location associated with the geofencing element based atleast in part on the received data indicative of the geofence.
 5. Thecomputer-implemented method of claim 3, further comprising: receiving,by the one or more computing devices, an input from the user indicativeof the selection of the geofencing element; and establishing, by the oneor more computing devices, the geofence around the geographic locationassociated with the selected geofencing element.
 6. Thecomputer-implemented method of claim 4, further comprising: receiving,by the one or more computing devices, location data indicative of acurrent geographic location of the user; and detecting, by the one ormore computing devices, entry into the established geofence based atleast in part on the received location data.
 7. The computer-implementedmethod of claim 4, wherein the received data indicative of the geofencecomprises at least one of data associated with the location of thegeofence, data indicative of the size of the geofence, or dataindicative of an expiration time for the geofence.
 8. Thecomputer-implemented method of claim 7, wherein the received dataindicative of the geofence comprises the data indicative of theexpiration time, and further comprising removing, by the one or morecomputing devices, the established geofence at the expiration time. 9.The computer-implemented method of claim 1, further comprising removing,by the one or more computing devices, the established geofence inresponse to the notification being provided.
 10. A computer-implementedmethod, comprising: receiving, by one or more computing devices, asearch query from a user device; determining, by the one or morecomputing devices, a plurality of search results based at least in parton the search query determining, by the one or more computing devices, aphysical search result from the plurality of search results, thephysical search result having an associated geographic location;generating, by the one or more computing devices, a geofencing elementassociated with the physical search result; providing, to the userdevice in response to the query: a set of the plurality of the searchresults, the set including the physical search result, and thegeofencing element associated with the physical search result;receiving, by the one or more computing devices, data indicative ofselection of the provided geofencing element; in response to receivingthe data indicative of the selection of the provided geofencing element,establishing a geofence around the geographic location associated withthe physical search result, the geofence being established for the userdevice or an additional user device associated with the user of the userdevice, wherein establishing the geofence causes the user device or theadditional user device to, upon entry into the established geofencebeing detected, provide a notification associated with the physicalsearch result.